package com.sunwayworld.basemodule.common.asynctask.bean;

import com.sunwayworld.framework.data.annotation.Id;
import com.sunwayworld.framework.data.annotation.NotNull;
import com.sunwayworld.framework.data.annotation.Table;
import com.sunwayworld.framework.data.annotation.Transient;
import com.sunwayworld.framework.support.domain.Insertable;
import com.sunwayworld.framework.support.domain.AbstractInsertable;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import com.alibaba.fastjson.annotation.JSONField;

/**
 * 异步任务服务节点
 * 
 * @author zhangs@sunwayworld.com
 * @date 2023-03-02
 */
@Table("T_LIMS_ASYNCTASK_SERVER")
public class LimsAsynctaskServerBean extends AbstractInsertable<String> implements Insertable<String> {

    @Transient
    private static final long serialVersionUID = -82566196618711043L;

    @Id
    private String id;// 节点ID
    @NotNull(defaultValue = "1")
    private String enable;// 启用
    private String name;// 名称
    private Long cpuThreshold;// cpu告警阈值
    private Long memoryThreshold;// 内存告警阈值
    private Long diskThreshold;// 磁盘告警阈值
    private String sendServerWarn;// 告警通知
    private String sendServerWarnImpl;// 告警通知实现
    @NotNull(defaultValue = "http://127.0.0.1/open/module/application/checkLive")
    private String healthUrl;// 健康检查URL
    private String createdById;// 制单人编码
    private String createdByName;// 制单人名称
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdTime;// 制单时间
    private String createdByOrgId;// 制单人单位编码
    private String createdByOrgName;// 制单人单位名称

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getEnable() {
        return enable;
    }

    public void setEnable(String enable) {
        this.enable = enable;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Long getCpuThreshold() {
        return cpuThreshold;
    }

    public void setCpuThreshold(Long cpuThreshold) {
        this.cpuThreshold = cpuThreshold;
    }

    public Long getMemoryThreshold() {
        return memoryThreshold;
    }

    public void setMemoryThreshold(Long memoryThreshold) {
        this.memoryThreshold = memoryThreshold;
    }

    public Long getDiskThreshold() {
        return diskThreshold;
    }

    public void setDiskThreshold(Long diskThreshold) {
        this.diskThreshold = diskThreshold;
    }

    public String getSendServerWarn() {
        return sendServerWarn;
    }

    public void setSendServerWarn(String sendServerWarn) {
        this.sendServerWarn = sendServerWarn;
    }

    public String getSendServerWarnImpl() {
        return sendServerWarnImpl;
    }

    public void setSendServerWarnImpl(String sendServerWarnImpl) {
        this.sendServerWarnImpl = sendServerWarnImpl;
    }

    public String getHealthUrl() {
        return healthUrl;
    }

    public void setHealthUrl(String healthUrl) {
        this.healthUrl = healthUrl;
    }

    public String getCreatedById() {
        return createdById;
    }

    public void setCreatedById(String createdById) {
        this.createdById = createdById;
    }

    public String getCreatedByName() {
        return createdByName;
    }

    public void setCreatedByName(String createdByName) {
        this.createdByName = createdByName;
    }

    public LocalDateTime getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(LocalDateTime createdTime) {
        this.createdTime = createdTime;
    }

    public String getCreatedByOrgId() {
        return createdByOrgId;
    }

    public void setCreatedByOrgId(String createdByOrgId) {
        this.createdByOrgId = createdByOrgId;
    }

    public String getCreatedByOrgName() {
        return createdByOrgName;
    }

    public void setCreatedByOrgName(String createdByOrgName) {
        this.createdByOrgName = createdByOrgName;
    }

}
